головне меню список тем тестування презентації історія створення

 

4.2. Процесорне ядро мікроконтролера

4.2.1. Структура процесорного ядра МК

Основними характеристиками, що визначають продуктивність процесорного ядра  МК, є:

  • набір регістрів для зберігання проміжних даних;
  • система команд процесора;
  • способи адресації операндів в просторі пам'яті;
  • організація процесів вибірки і виконання команди.

З погляду системи команд і способів адресації операндів процесорне ядро сучасних 8-розрядних МК реалізує один з двох принципів побудови процесорів:

  • процесори з CISC-архітектурою, що реалізовують так звану повну систему команд (Complicated Instruction Set Computer);
  • процесори з RISC-архітектурою, що реалізовують скорочену систему команд (Reduced Instruction Set Computer).

CISC-процесори виконують великий набір команд з розвиненими можливостями адресації, даючи розробнику можливість вибрати найбільш відповідну команду для виконання необхідної операції. У 8-розрядних МК процесор з CISC-архітектурою може мати однобайтовий, двобайтовий і трьохбайтовий (рідко чотирьохбайтовий) формат команд. При цьому система команд, як правило, неортогональна, тобто не всі команди можуть використовувати будь-який із способів адресації стосовно будь-якого з регістрів процесора. Вибірка команди на виконання здійснюється побайтно протягом декількох циклів роботи МК. Час виконання команди може складати від 1 до 12 циклів. До МК з CISC-архітектурою відносяться МК фірми Intel з ядром MCS-51, які підтримуються в даний час цілим рядом виробників, МК сімейств НС05, НС08 і НС11 фірми Motorola і ряд інших.
В процесорах з RISC-архітектурою набір виконуваних команд скорочений до мінімуму. Для реалізації складніших операцій доводиться комбінувати команди. При цьому всі команди мають формат фіксованої довжини (наприклад, 12, 14 або 16 біт), вибірка команди з пам'яті і її виконання здійснюється за один цикл (такт) синхронізації. Система команд RISC-процесора припускає можливість рівноправного використовування всіх регістрів процесора. Це забезпечує додаткову гнучкість при виконанні ряду операцій. До МК з RISC-процесором відносяться МК AVR фірми Atmel, МК PIC16 і PIC17 фірми Microchip і інші.
На перший погляд, МК з RISC-процесором повинні мати більш високу продуктивність в порівнянні з CISC МК при одній і тій же тактовій частоті внутрішньої магістралі. Проте на практиці питання про продуктивність складніше і неоднозначне.
По-перше, оцінка продуктивності МК за часом виконання команд різних систем (RISC і CISC) не зовсім коректна. Звичайно продуктивність МП і МК прийнято оцінювати числом операцій пересилки «регістр-регістр», які можуть бути виконані протягом однієї секунди. В МК з CISC-процесором час виконання операції «регістр-регістр» складає від 1 до 3 циклів, що, здавалося б, поступається продуктивності МК з RISC-процесором. Проте прагнення до скорочення формату команд при збереженні ортогональності системи команд RISC-процесора приводить до вимушеного обмеження числа доступних в одній команді регістрів. Так, наприклад, системою команд  МК PIC16 передбачена можливість пересилки результату операції тільки в один з двох регістрів - регістр-джерело операнда f або робочий регістр W. Таким чином, операція пересилки вмісту одного з доступних регістрів в іншій (не джерело операнда і не робочий) зажадає використовування двох команд. Така необхідність часто виникає при пересилці вмісту одного з регістрів загального призначення (Рон) в один з портів МК. В той же час, в системі команд більшості CISC-процесорів присутні команди пересилки вмісту Рон в один з портів вводу/виводу. Тобто складніша система команд іноді дозволяє реалізувати більш ефективний спосіб виконання операції.
По-друге, оцінка продуктивності МК по швидкості пересилки «регістр-регістр» не враховує особливостей конкретного реалізовуваного алгоритму управління. Так, при розробці швидкодійних пристроїв автоматизованого управління основну увагу слід приділяти часу виконання операцій множення і ділення при реалізації рівнянь різних передавальних функцій. А при реалізації пульта дистанційного керування побутовою технікою слід оцінювати час виконання логічних функцій, які використовуються при опиті клавіатури і генерації послідовної кодової посилки управління. Тому в критичних ситуаціях, що вимагають високої швидкодії, слід оцінювати продуктивність великої послідовності операцій, які переважно використовуються в алгоритмі управління і мають обмеження за часом виконання.
По-третє, необхідно ще враховувати, що вказані в довідкових даних на МК частоти синхронізації звичайно відповідають частоті кварцового резонатора, що підключається, тоді як тривалість циклу центрального процесора визначається частотою обміну по ВКМ. Співвідношення цих частот індивідуальне для кожного МК і повинне бути враховано при порівнянні продуктивності різних моделей контролерів.
З погляду організації процесів вибірки і виконання команди в сучасних 8-розрядних МК застосовується одна з двох вже згадуваної архітектури МПС: фон-нейманівська (прінстонська) або гарвардська.
Основною особливістю першої архітектури є використовування загальної пам'яті для зберігання програм і даних, як показано на мал. 4.2




Мал. 4.2. Структура МПС фон-нейманівська.

Основна перевага архітектури Фон-Неймана - спрощення пристрою МПС, оскільки реалізується звернення тільки до однієї загальної пам'яті. Крім того, використовування єдиної області пам'яті дозволяло оперативно перерозподіляти ресурси між областями програм і даних, що істотно підвищувало гнучкість МПС з погляду розробника програмного забезпечення. Розміщення стека в загальній пам'яті полегшувало доступ до його вмісту. невипадково тому ця архітектура стала основною архітектурою універсальних комп'ютерів, включаючи персональні комп'ютери.
Основною особливістю гарвардської архітектури є використовування роздільних адресних просторів для зберігання команд і даних, як показано на мал. 4.3.



Мал. 4.3. Структура МПС з гарвардською архітектурою.

Гарвардська архітектура майже не використовувалася до кінця 70-х років, поки виробники МК не зрОЗПміли, що вона дає певні переваги розробникам автономних систем управління.
Річ у тому, що, судячи з досвіду використовування МПС для управління різними об'єктами, для реалізації більшості алгоритмів управління такі переваги фон-нейманівської архітектури як гнучкість і універсальність не мають великого значення. Аналіз реальних програм управління показав, що необхідний об'єм пам'яті даних  МК, що використовується для зберігання проміжних результатів, як правило, на порядок менше необхідного об'єму пам'яті програм. В цих умовах використовування єдиного адресного простору приводило до збільшення формату команд за рахунок збільшення числа розрядів для адресації операндів. Вживання окремої невеликої за об'ємом пам'яті даних сприяло скороченню довжини команд і прискоренню пошуку інформації в пам'яті даних.
Крім того, гарвардська архітектура забезпечує потенційно більш високу швидкість виконання програми в порівнянні з фон-нейманівською за рахунок можливості реалізації паралельних операцій. Вибірка наступної команди може відбуватися одночасно з виконанням попередньої, і немає необхідності зупиняти процесор на час вибірки команди. Цей метод реалізації операцій дозволяє забезпечувати виконання різних команд за однакове число тактів, що дає можливість більш просто визначити час виконання циклів і критичних ділянок програми.
Більшість виробників сучасних 8-розрядних МК використовує гарвардську архітектуру. Проте гарвардська архітектура є недостатньо гнучкою для реалізації деяких програмних процедур.

 


4.2.2. Система команд процесора МК

Так само, як і в будь-якій мікропроцесорній системі, набір команд процесора МК включає чотири основні групи команд:

  • команди пересилки даних;
  • арифметичні команди;
  • логічні команди;
  • команди переходів.

Для реалізації можливості незалежного управління розрядами портів (регістрів) в більшості сучасних МК передбачена також група команд бітового управління (булевий або бітовий процесор). Наявність команд бітового процесора дозволяє істотно скоротити об'єм коду управляючих програм і час їх виконання.
У ряді МК виділяють також групу команд управління ресурсами контролера, що використовується для настройки режимів роботи портів вводу/виводу, управління таймером і т.п. В більшості сучасних МК внутрішні ресурси контролера відображаються на пам”ять даних, тому для цілей управління ресурсами використовуються команди пересилки даних.
Система команд  МК в порівнянні з системою команд універсального МП має, як правило, менш розвинені групи арифметичних і логічних команд, зате більш потужні групи команд пересилки даних і управління. Ця особливість пов'язана з сферою вживання МК, що вимагає, перш за все, контролю навколишнього оточення і формування управляючих дій.

4.2.3. Схема синхронізації МК

Схема синхронізації МК забезпечує формування сигналів синхронізації, необхідних для виконання командних циклів центрального процесора, а також обміну інформацією по внутрішній магістралі. Залежно від виконання центрального процесора командний цикл може включати від одного до декількох (4 - 6) тактів синхронізації. Схема синхронізації формує також мітки часу, необхідні для роботи таймерів МК. До складу схеми синхронізації входять подільники частоти, які формують необхідні послідовності синхросигналів.

 

 

попередня тема наступна тема